package com.itheima.health.service;

import com.itheima.health.pojo.Order;
import com.itheima.health.vo.OrderSubmitParam;

import java.util.Date;
import java.util.List;
import java.util.Map;

/**
 * 预约Service
 */
public interface OrderService {
    /**
     *  根据会员id,预约时间，套餐id查询余额记录
     * @param memberId
     * @param orderDate
     * @param setMealId
     * @return
     */
    Order getOneByCondition(Integer memberId, Date orderDate, Integer setMealId);

    /**
     * 新增预约信息
     * @param order
     */
    void save(Order order);

    /**
     * 根据预约id获取预约信息
     * @param id
     * @return
     */
    Order getOrderById(Integer id);

    /**
     * 获取今日预约数
     * @param today
     * @return
     */
    Integer getCountToday(String today);

    /**
     * 获取一周预约数
     * @param week
     * @return
     */
    Integer getCountWeek(String week);

    /**
     * 获取一月预约数
     * @param month
     * @return
     */
    Integer getCountMonth(String month);

    /**
     * 获取今日到诊数
     * @param today
     * @return
     */
    Integer getCountTodayVisits(String today);

    /**
     * 获取一周到帧数
     * @param week
     * @return
     */
    Integer getCountWeekVisits(String week);

    /**
     * 获取一月到诊数
     * @param month
     * @return
     */
    Integer getCountMonthVisits(String month);

    /**
     * 热门套餐。
     * @return
     */
    List<Map<String, Object>> hoteSetmeal();

    /**
     * 总预约数
     * @return
     */
    Integer getCount();
}
